============================================================== Guild: wafer.space Community Channel: ๐Ÿ—๏ธ - Designing / project-template / Hmm, _might_ have found a bug in the LVS After: 04/30/2026 23:59 ============================================================== [05/11/2026 17:31] mole99 [05/11/2026 17:32] mole99 Thanks for the report! Yes, it really seems `diode_connections.lvs` is the only place where `nwell` is used for the connection to the devices. Everywhere else, i.e. `moscap_extraction.lvs/mos_extraction.lvs/mos_sab_extraction.lvs/res_extraction.lvs`, `nwell_con` is used. If you take a look at `general_derivations.lvs` you can see that `nwell_con` is defined as: ``` nwell_con = nwell.not(res_mk) ``` I think this is so that nwell resistors are correctly extracted. They are extracted as: ``` # NWELL logger.info('Extracting NWELL device') extract_devices(resistor_with_bulk('nwell', 1000, BResistor), { 'R' => nwell_res, 'C' => nwell_con, 'W' => sub }) ``` You can find a description about the extractor here: https://www.klayout.de/doc/manual/lvs_device_extractors.html Taking a look at the connectivity setup in `general_connections.lvs`, only `nwell_con` is connected to `ntap`: ``` # Inter-layer connect(lvpwell_con, ptap) connect(lvpwell_con, ptap_dw) connect(dnwell, ntap_dw) connect(nwell_con, ntap) connect(ptap, contact) ... ``` That's the reason why you get anonymous pins with just `nwell`. Long story short, I agree that `nwell_con` should be used :) [05/11/2026 17:32] mole99 If you would like to be credited, you can open a PR in the upstream repo: https://github.com/fossi-foundation/globalfoundries-pdk-libs-gf180mcu_fd_pv Otherwise, I will do it for you. [05/11/2026 17:32] mole99 You might want to use the LVS setup in this directory anyway, as @Clyde Laforge has made some important improvements around substrate cuts recently. We are working on creating a new open_pdks PDK, which will allow us to switch from the current wafer.space PDK fork. However, this probably won't happen until next week, as I'll be at Hackaday Europe this weekend :) [05/11/2026 17:43] polyfractal Awesome, thanks for taking a look @Leo Moser (mole99)! No credit needed, probably easier/faster for you to make the fix than for me to cobble together a PR ๐Ÿ™‚ Will take a look at that LVS setup for my own experiments! and goodluck/have fun at hackaday conf ๐Ÿ™‚ [05/11/2026 18:01] mole99 PR is up: https://github.com/fossi-foundation/globalfoundries-pdk-libs-gf180mcu_fd_pv/pull/20 Great, and thank you! ๐Ÿ˜ƒ {Embed} https://github.com/fossi-foundation/globalfoundries-pdk-libs-gf180mcu_fd_pv/pull/20 fix: diode_nw2ps_* connect to nwell_con by mole99 ยท Pull Request #... Discovered thanks to a report by Zachary. diode_nw2ps_* used the wrong layer for the bulk connection. general_connections.lvs uses nwell_con to connect to ntap. {Reactions} โค๏ธ [05/11/2026 18:18] polyfractal woo! {Reactions} ๐Ÿ™Œ ============================================================== Exported 7 message(s) ==============================================================